The introduction of broadband networks, headend and terminal devices such as set-top boxes, and recording media such as DVD disks recorded with digitally compressed audio, video and data signals, for example, which utilize motion Picture Expert Group (MPEG) compression standards, may provide sound and picture quality that is virtually indistinguishable from the original material. One of the most popular MPEG standards is MPEG-2, which provides the necessary protocols and infrastructure that may be used for delivering digital television or DVD contents with compressed audio, video and data signals. A detailed description of the MPEG-2 standard is published as ISO/IEC Standard 13818. As broadband networks continue to evolve, there is a need to provide access for legacy devices to ensure interoperability with legacy and disparate systems.
An MPEG program may contain a plurality of data streams. For example, it may contain streams of compressed digital video and audio as well as streams for program control information. Video and audio encoders compress video and audio contents, respectively, into elementary streams (ES). In MPEG-2, these streams may encapsulate other information such as decoding and presentation time stamps to generate packetized elementary streams (PES). All these streams may be encoded and multiplexed next into a transport stream (TS) for transmission. The TS may be de-multiplexed and compressed video and audio streams may be decoded in a set-top box (STB) and viewed on a TV. For the entire system, the type of encoding process, including TS encoding, may determine whether another device, for example, a STB, will be able to decode and interpret a received MPEG data stream. In this regard, the other devices may be a legacy or disparate device.
In a typical MPEG data stream, the length of individual ESs may be equivalent to the length of the program. Each ES may be encapsulated in a plurality of variable-length packets called a PES. The PES may include a header that may precede one or more payload bytes. The header may include information pertaining to the encoding process required by the MPEG decoder to decompress and decode a received ES. Each individual ES may have a corresponding PES and any encoded audio and video information may still reside in separate PESs. Notably, the PES may be viewed primarily as a logical construct and is not intended to be utilized for data interchange, transport, and interoperability. Notwithstanding, the PES may be utilized for conversion between two types of system streams, namely, TS and program stream (PS).
The TS and PS may be formed by multiplexing a plurality of PES packets. The TS may include a plurality of additional packets that may contain tables, which may be necessary for de-multiplexing the TS. The tables may be collectively called program specific information (PSI). To maintain synchronization and timing, null packets may also be inserted to fill the intervals between information-bearing packets. Timing information for an associated program may be carried by specific packets. One type of timing information may be called the program clock reference (PCR). The PCR may be located in one of the optional header fields of the TS packet. During operation, the PCR may permit the decoder to synchronize its clock to the same frequency as that of the original encoder's clock frequency. TS packets may have a fixed length of 188 bytes, which may include a header having a minimum size of 4 bytes and a maximum payload of 184 bytes.
MPEG-2 Transport Stream (TS) has been widely used in digital video broadcasting. The audio and video synchronization in MPEG-2 TS may require time-stamps, system clock and digital phase-lock loop (D-PLL). Three kinds of time stamps may be created by a single, common system clock in the encoder and carried in the transport stream. Presentation Time Stamps (PTS) may indicate the correct presentation time of audio and video and may comprise 33 bits of information. Decoding Time Stamps (DTS) may indicate the correct decoding time of audio and video and may comprise 33 bits of information. Program Clock References (PCR) may indicate the instantaneous value of the system clock itself at the sampled intervals and may comprise 42 bits of information. In the decoder, these time stamps are extracted. PCRs may be utilized to reconstruct the system clock together with D-PLL, while DTS and PTS may be utilized to control the timing of decoding and presentation of video and/or audio. The use of DTS may result in unnecessary computational complexity and storage cost in the decoder. Moreover, the use of time stamp fields that are longer than 32 bits may also result in additional computational complexity in the decoder since multiple fetches may be required.
Further limitations and disadvantages of conventional and traditional approaches will become apparent to one of skill in the art, through comparison of such systems with some aspects of the present invention as set forth in the remainder of the present application with reference to the drawings.